package 链表;
import java.util.ArrayList;
public class offer22链表倒数k个节点 {
	/*
	 现在 再 来 看这个题 用递归来写 确实，
	 是 想法的，但是 跟迭代 没什么区别的！
	 */
	ArrayList<ListNode> list = new ArrayList<>();
	int sum;
	public void solution(int k) {
		
	}
	public void recursion(ListNode head,int k) {
		if(head == null) {
			return ;
		}
		recursion(head.next,k);
		sum++;
		if(sum == k) {
			list.add(head);
			return ;
		}
	}
/**
 * 
 * 这是 一个 错误的 版本 实现  
 * 这是错误 的  等下 看下为啥
 * @param head
 * @param k
 * @param sum
 */
	public void  recursion(ListNode head ,int k,int sum) {	
		if(head== null) {
//				sum++;
			return;
			}
//			int ans = 0;
			recursion(head.next,k,sum);
			sum++;
			if(sum == k) {
//				System.out.println(head);
				list.add(head);
			}
//			return ans+1;
	}
	
	
	
	
	
	
	  class ListNode {
		      int val;
		      ListNode next;
		      ListNode(int x) { val = x; }
		 }
}
